Racket 哈希表
创建哈希表
; 创建一个空的哈希表
(define h (make-hash))
; 使用键值对创建哈希表
(define h (hash 'a 1 'b 2 'c 3))
访问哈希表
; 根据键获取值
(hash-ref h 'a) ; 返回 1
; 根据键获取值,如果键不存在则返回默认值
(hash-ref h 'd 0) ; 返回 0
修改哈希表
; 在哈希表中添加或更新键值对
(hash-set! h 'd 4)
; 从哈希表中移除键
(hash-remove! h 'a)
检查键是否存在
; 检查哈希表中是否存在某个键
(hash-has-key? h 'a) ; 返回 #t 或 #f
遍历哈希表
; 使用 hash-for-each 遍历哈希表
(hash-for-each (lambda (key value)
(displayln (list key value))) h)
获取哈希表的大小
; 返回哈希表中的键值对数量
(hash-count h)
合并两个哈希表
; 合并 h1 和 h2,如果有重复的键,h2 的值将覆盖 h1 的值
(define h3 (hash-union h1 h2))
本文作者:Maeiee
本文链接:Racket 哈希表
版权声明:如无特别声明,本文即为原创文章,版权归 Maeiee 所有,未经允许不得转载!
喜欢我文章的朋友请随缘打赏,鼓励我创作更多更好的作品!